package org.colafries.admin.service.index;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.colafries.admin.entity.domain.index.LogicFactTableField;
import org.colafries.admin.entity.vo.index.LogicFactTblFieldReqVO;

import java.util.List;

/**
 * <p>
 * 逻辑事实表字段明细表 服务类
 * </p>
 *
 * @author Ann
 * @since 2024-06-03
 */
public interface ILogicFactTableFieldService extends IService<LogicFactTableField> {

    /**
     * 增加逻辑事实表字段（事实、度量、维度）
     * @param reqVO
     * @return int
     * @Author anning
     * @Date 2024/6/6
     */
    int add(LogicFactTblFieldReqVO reqVO);

    /**
     * 删除逻辑事实表字段
     * @param reqVO
     * @return int
     * @Author anning
     * @Date 2024/6/6
     */
    int delete(LogicFactTblFieldReqVO reqVO);

    /**
     * 修改逻辑事实表字段
     * @param reqVO
     * @return int
     * @Author anning
     * @Date 2024/6/6
     */
    int update(LogicFactTblFieldReqVO reqVO);

    /**
     * 查询逻辑事实表字段listAll
     * @param reqVO
     * @Author anning
     * @Date 2024/6/6
     */
    List<LogicFactTableField> listAll(LogicFactTblFieldReqVO reqVO);

    /**
     * 分页查询逻辑事实表字段
     * @param reqVO
     * @Author anning
     * @Date 2024/6/6
     */
    IPage<LogicFactTableField> pageList(LogicFactTblFieldReqVO reqVO);

    LogicFactTableField queryByCode(Long logicTableFieldCode);

    List<LogicFactTableField> listByTableCode(Long logicTableCode);
}
